1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package com.google.common.collect.testing.testers;
18
19 import static com.google.common.collect.testing.features.CollectionFeature.ALLOWS_NULL_VALUES;
20 import static com.google.common.collect.testing.features.CollectionFeature.SUPPORTS_ADD;
21 import static com.google.common.collect.testing.features.CollectionSize.ZERO;
22
23 import com.google.common.annotations.GwtCompatible;
24 import com.google.common.annotations.GwtIncompatible;
25 import com.google.common.collect.testing.Helpers;
26 import com.google.common.collect.testing.features.CollectionFeature;
27 import com.google.common.collect.testing.features.CollectionSize;
28
29 import java.lang.reflect.Method;
30
31
32
33
34
35
36
37
38 @GwtCompatible(emulated = true)
39 public class SetAddTester<E> extends AbstractSetTester<E> {
40 @CollectionFeature.Require(SUPPORTS_ADD)
41 @CollectionSize.Require(absent = ZERO)
42 public void testAdd_supportedPresent() {
43 assertFalse("add(present) should return false", getSet().add(samples.e0));
44 expectUnchanged();
45 }
46
47 @CollectionFeature.Require(value = {SUPPORTS_ADD, ALLOWS_NULL_VALUES})
48 @CollectionSize.Require(absent = ZERO)
49 public void testAdd_supportedNullPresent() {
50 E[] array = createArrayWithNullElement();
51 collection = getSubjectGenerator().create(array);
52 assertFalse("add(nullPresent) should return false", getSet().add(null));
53 expectContents(array);
54 }
55
56
57
58
59
60
61 @GwtIncompatible("reflection")
62 public static Method getAddSupportedNullPresentMethod() {
63 return Helpers.getMethod(SetAddTester.class, "testAdd_supportedNullPresent");
64 }
65 }